Method and apparatus for eyetrack—mediated downloading

ABSTRACT

Apparatus, methods, systems and computer program products are disclosed to use gaze-tracking devices to determine an area of a display screen of most interest to a user and if that area of interest has a bandwidth allocation of increasing that allocation. Thus, the data transfers of interest to the user receive a larger bandwidth allocation than the data transfers that do not interest the user.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates generally to the field of computer-human userinterface technology and more particularly to a method, apparatus,system and computer program product for allowing a computer toautomatically determine what aspect of the computer's operation has theuser's interest and to optimize that aspect.

2. Background

Human/Computer Interaction

An important characteristic of modern computing systems is the interfacebetween the human user and the computer. Early interactive interfaceswere text based wherein a user communicated with the computer by typinga sequence of characters on a keyboard and the computer communicatedwith the user by displaying characters on an output device—commonly adisplay screen. These input characters specified a command to thecomputer's operating system or to an application program executing onthe computer. This command invoked program logic to perform a givenoperation. Modem computer systems use a graphical user interface (GUI)to simplify the interaction between a user and a computer. A GUIequipped computer communicates with a user by displaying graphics,including text and icons, on a display screen and the user communicateswith the machine both by typing in textual information in response todialogs and by manipulating the displayed icons with a pointing device,such as a mouse.

Many modem GUIs provide a window environment. In a typical windowenvironment the graphical display portrayed on the display screen isarranged to resemble the surface of an electronic “desktop” and eachapplication program running on the computer is represented as one ormore electronic “paper sheets” displayed as rectangular regions on thedisplay screen. These rectangular regions are called “windows”. Eachwindow may include a multitude of panes. Each pane being an area for aparticular type of information (textual, still image, moving image,etc.).

Each window displays information generated by an associated applicationor system program. Further, there may be several windows simultaneouslypresent on the desktop with each containing information generated by aprogram. A program presents information to the user through each windowby drawing or “painting” images, graphics or text within the window. Theuser can also move a window to a different location on the displayscreen and change its size and appearance to arrange the desktop in aconvenient manner. The user communicates with the program by “pointingat” objects displayed in the window with a cursor controlled by apointing device and manipulating the objects as desired. In some casesthe program requests additional information from the user in response toa manipulation. This request is presented as a “dialog” that allows theuser to provide the requested information to the dialog from thekeyboard.

Each window typically includes a number of standard graphical objectssuch as sizing boxes, buttons and scroll bars. These features representuser interface controls that the user can manipulate with the pointingdevice. When the controls are selected or manipulated, the GUI invokesprogram logic in the underlying program to effect a correspondingcommand.

One characteristic of a GUI is that the GUI is only responsive to auser's explicit manipulation of the pointing device or keyboard. In thecase of a mouse, the user physically moves the mouse device and a cursoron the display moves accordingly. Some pointing devices actually trackthe user's gaze and move the cursor to where the user “looks” on thedisplay screen. However, even with the gaze tracking (eye tracking)devices, the GUI only responds to the user's explicit commands whetherthat command be a button press, a blink, or a shift of view. Thecomputer remains a tool that the user operates by issuing explicitcommands.

In contrast, humans have the ability to make inferences by looking atanother human's eyes. Pupils dilate when people see somethingattractive. People look at what they are interested in and stare atthings they find interesting. Also, human eye movements reflect thoughtprocesses. Thus, humans observe what other persons do with their eyesand make inferences as to what that other person is interested in and/orthinking.

The prior art in computer-human interfaces does not determine the user'simmediate interest. Prior art computer-human interfaces simply respondto a user's command, whether input by typing the command at a keyboard,by manipulating a mouse to move a cursor, or by using a gaze trackingdevice to move a cursor. Thus, the computer is unable to detect oranticipate what characteristic of the computer's operation is of mostinterest to the user at any given time.

Gaze Tracking Devices

Most gaze tracking devices operate based upon the principal that thedirection of a person's gaze is directly related to the relativepositions of the pupil and the reflection of an object off the cornea(gaze tracking is often termed eye tracking). These devices ofteninclude image processing capabilities that operate on a video image ofan eye to determine the gaze direction of the eye. These imageprocessing capabilities are enhanced by using the bright eye affect.

The bright eye affect is a result of the highly reflective nature of theretina. This characteristic of the retina means that a significantamount of the light that enters an eye is reflected back through thepupil. Thus, when light shines into an eye along the axis of a cameralens, the retina reflects a significant portion of the light back to thecamera. Hence, the pupil appears as a bright disk to the camera. Thisaffect allows the pupil to be more readily imaged from a video of aneye.

Other methods exist for gaze tracking. Some incorporate having two videocameras, one for tracking head movement and the other for measuring areflection off of the eyes. Other mechanisms involve measuring electricpotential differences between locations on different sides of an eye.High accuracy devices are very intrusive on the user and require thatthe user's head be held in a fixed position or that the user wearspecial equipment to track the eye.

Recently, an eyegaze eyetracking system has been developed as describedin The Eyegaze Eyetracking System—Unique Example of a Multiple-UseTechnology, 4th Annual 1994 IEEE Dual-Use Technologies and ApplicationsConference, May, 1994. This system comprises a video camera locatedbelow a computer display that monitors one of the user's eyes. Thedevice also contains an infrared light emitting diode (LED) located atthe center of the camera's lens to maximize the bright-eye affect. Imageprocessing software on the computer computes the user's gazepoint on thedisplay sixty times a second with an accuracy of about a quarter inch.

Gaze tracking devices have been used for weapon control, operatortraining, usability analysis, market research, and as an enablement forthe disabled. However, gaze tracking devices have not been used todetermine what characteristic of a computer's operation interests thecomputer user at a particular time or to allow the computer to adapt toa user's interest as demonstrated by where on the display screen theuser is looking.

Text to Speech

Many modern computers now provide text-to-speech capability. Thiscapability processes text strings and produces understandable audiospeech from the computer's audio output device (headphones or speaker).This capability allows a computer to present an audio version of a textstring to a computer user.

Problems with Downloading Information

The background of the World Wide Web (WWW) and WWW browsers are welldescribed by reference to the first chapter of Instant HTML Web Pages,by Wayne Ause, Ziff-Davis Press, ISBN 1-56276-363-6, Copyright 1995,pages 1-15, hereby incorporated by reference as illustrative of theprior art.

Using the Internet, a computer user has access to an immense amount ofinformation. However, retrieving this information over the Internetoften takes significant time because of the limited bandwidth of thecommunication channel. The bandwidth is limited by many factors. Some ofthese factors are the bandwidth of the communication link from theuser's computer to the Internet, the bandwidth of the communication linkfrom the information provider's computer to the Internet, the existenceof other communication traffic on these links, and the bandwidth of theInternet itself. Often, the primary bandwidth limitation is at theuser's computer.

This bandwidth limitation at the user's computer is exacerbated becausemultiple data streams often flow across this limited communication link.If the user is interested in a particular data transfer, theseadditional data streams utilize bandwidth that would otherwise beavailable to the data stream-of-interest to the user. This results in adecreased data transfer rate of the data stream-of-interest.

Prior art WWW browsers, for example, generally attempt to equallyallocate bandwidth to all the data transfers directed towards visibleviews in a window. Although this approach is clearly better then simplysequentially retrieving data for each view, this approach delaysretrieving data that is of the most interest to the user because theavailable channel bandwidth is divided between the data streamssupplying data to the views. Thus, the user must wait an additional timebecause of uninteresting information using bandwidth that could havebeen applied to the information of interest.

During the transmission of large amounts of data, a program generallyprovides some indication of the progress of the transmission. Thisindication is provided by indicators such as bar indicators, numericalpercentage indicators, or in the case of images often just the amount ofdetail available in the displayed image. While waiting for the transferto complete, the user often watches the progress of the indicator or ofthe partially-filled image.

As mentioned above, one problem with the prior art is that a user haslittle control over the bandwidth allocated to the data stream used todownload information. Further, even if an application should providethis control to the user, the user still must explicitly command theapplication to set the allocated bandwidth.

The invention addresses these problems.

Problems with Additional Data Associated with Images

In print and computer hypertext documents, images such as pictures andillustrations, are often provided with additional information, such ascaptions explaining or enhancing the image. Those who view the imagecannot look at the image and read an associated caption at the sametime. Thus, the viewer's attention is diverted from the image whilesearching for, and reading, the associated caption. Contrast thissituation with a directive time-dependent medium, such as film or video,where a viewer is simultaneously presented with both visual and audioinformation. Audio captioning presents additional information though anaudio speaker allowing the user to receive additional informationauditorally without distracting the viewer's gaze from the image ofinterest. Systems that allow a user to select which image to view, froma plurality of images, require the user to explicitly trigger the vocalcaption. Thus, the user is again distracted from looking at the image bythe need to seek out and activate the caption.

The invention addresses these problems.

Problems with Small Text Displayed to a User

People often have difficulty reading text on a computer display screen.Often this is due to vision difficulties. Thus, the type used in WYSIWYG(what you see is what you get) applications is often too small forcomfortable reading at the display distance. Further, publishers usedifferent type sizes as a layout tool that indicates importance. Thus,there is a large variation in text size and screen space used betweenthe largest headline text and the text of an article. To address thisproblem, some applications allow the WYSIWYG text to be magnified.Examples of word processing programs that provide this capability areMicrosoft's Word® and Adobe's FrameMaker® programs. However, theseprograms require the user to explicitly specify, either directly orindirectly, the desired magnification factor. Further, the magnificationprocess reduces the amount of the page that can be displayed on thecomputer display at the same time because the percentage of the pagethat is displayed to the user is reduced when the page is magnified.This problem is exacerbated with applications that display WYSIWYGversions of newspapers and magazines because these applicationsgenerally attempt to maintain the WYSIWYG page layout and the displayedpage is uniformly magnified. To see the entire page, the article text isgenerally reduced to unreadable size.

The page layout of newspapers and magazines is important. To attract theinterest of a large number of readers, the publishers of newspaperspresent a large number of articles on the first few pages. One way toincrease the number of articles on a page is to decrease the amount ofspace used for the article. In a traditional newspaper, this isaccomplished by moving subsequent parts of the article to differentpages. This allows the reader to quickly scan articles that the editorbelieves to be most relevant and to read in depth those articles thatthe reader finds interesting. Further, where articles are placed on apage influences the order that articles are viewed. Electronicnewspapers have these same characteristics.

Additionally, electronic newspapers, like traditional newspapers, usedifferent type styles and sizes to indicate the relative importance ofheadlines and subheaders. Thus, there is a wide disparity between thelargest and smallest text displayed to the reader. Moreover, even largecomputer displays have a smaller display area than is available to atraditional newspaper thus reducing the area available to the publisherfor articles.

Nevertheless, a computer display must often carry the same amount ofinformation as a newspaper. Thus, mapping the content of a newspaperonto a display screen reduces the size of the type used for the articlesto the point where the text of the article is extremely difficult toread. Further, the magnification method used by word processing programsfor globally expanding the displayed text does not work well whenpresenting many articles on a page because magnifying the entire page,and providing a limited view into the page distances the structure ofthe page from the viewer. Thus, globally expanding the text isincompatible with presenting as many articles as is desired on the page.Further, globally expanding the page also expands the larger title andheadline text more than is needed to make this text readable and at acost of consuming undue display space that could otherwise be used topresent additional information. Thus, there is a need for a mechanismthat optimizes the text size for a reader while still preserving thestructural indications provided by the page layout.

The invention addresses these problems.

Problems with Selecting Relevant Information for a User

Another aspect of electronic newspapers, briefly mentioned above, isthat of selecting information content for the newspaper. Informationcontent includes both articles about particular items of interest andadvertising information. Information content is a major reason whypeople select different paper-based magazines and newspapers. Thesetraditional information providers present the information that theybelieve interest their readers. Traditional newspapers and magazines arestatic once printed. Thus, each edition is the same for all those whoread it and each copy of a particular edition distributed to aparticular region has the same articles, the same layout and the sameadvertising as all the other copies distributed to the region. Thisadvertising and information content can be customized to the particularregion. However, this regionalization can only be carried so far as itis extremely expensive to customize a newspaper or magazine to theparticular individual interests of each reader. Thus, some of theinformation selected for a region will not interest some readers.

Intangible electronic newspapers need not be constrained by the abovementioned limitations inherent in using a tangible paper medium.However, electronic newspapers still target most advertising andinformation content to a particular market and not to the particularinterests of an individual reader. Even where the reader of anelectronic publication is provided with a means to customize the contentof the electronic paper the user must explicitly specify the content.Further, by explicitly specifying the content, the user may not bepresented with other related information that falls just outside of thespecification but that could be of interest to the reader.

The invention addresses these problems.

SUMMARY OF THE INVENTION

The present invention provides an economical, apparatus, method, systemand computer program product for providing enhanced facilities to usersof networked computer systems. This invention provides a way for acomputer to monitor the user to determine what aspect of the computeroperation the user is interested in and to respond accordingly.

One aspect of the invention teaches a computer controlled method foraltering the bandwidth allocated information being downloaded across anetwork to an area of interest on a display device depending on a user'sgaze position on the display device. This gaze position is determinedfrom data provided by a gaze-tracking device attached to the computer.The computer controlled method first identifies an area of interest onthe display device. Then the method determines the bandwidth allocatedto that area of interest. Finally, the existing bandwidth allocation isincreased.

Another aspect of the invention is that it provides an informationaccess apparatus having a CPU, memory, network interface, a bandwidthallocation mechanism, a display device and a gaze-tracking device thatprovides a gaze position. This information access apparatus also has anidentification mechanism to identify an area of interest on the displaydevice. Further, the apparatus includes a determination mechanism thatdetermines the existing bandwidth allocated to the area of interest andan increase bandwidth mechanism that increases the bandwidth allocatedto the area of interest.

A further aspect of the invention provides an information access systemattached to a network and having a display device, a bandwidthallocation device, and a gaze tracking device. The system includes anidentification mechanism used to identify an area of interest on thedisplay device. The system also includes a determination mechanism todetermine the existing bandwidth allocated to the area of interest.Finally the system contains a mechanism to increase the bandwidthallocated to the area of interest.

An additional aspect of the invention discloses a computer programproduct having a computer usable storage medium embedded with computerreadable code that causes a computer to access information. The computerprogram product causes the computer to effect an identificationmechanism that identifies an area of interest on a display device. Adetermination mechanism determines an existing bandwidth allocationdirected to the area of interest. The computer program product alsoincludes code devices that increase the bandwidth allocation directedtoward the area of interest.

The foregoing and many other objects and advantages of the presentinvention will no doubt become obvious to those of ordinary skill in theart after having read the following detailed description of thepreferred embodiments which are illustrated in the various drawingfigures.

DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a portion of a computer system, including a CPU and aconventional memory in which the present invention may be embodied;

FIG. 2 illustrates a display device fitted with gaze tracking equipment;

FIG. 3 illustrates aspects of a gaze position in accordance with apreferred embodiment;

FIG. 4 illustrates the process for determining a gaze position as usedin accordance with a preferred embodiment;

FIG. 5 illustrates the operation of the invention to allocate bandwidthto an area of interest in accordance with a preferred embodiment;

FIG. 6 illustrates the process used to change the bandwidth of a datastream based upon a gaze position in accordance with a preferredembodiment;

FIGS. 7a&b illustrate audio captioning in accordance with a preferredembodiment;

FIG. 8 illustrates extraction of an image caption from a page of text inaccordance with a preferred embodiment;

FIGS. 9 illustrates the process used to implement captioning inaccordance with a preferred embodiment;

FIG. 10 illustrates the form of an electronic newspaper;

FIG. 11 illustrates text magnification and page layout in accordancewith a preferred embodiment;

FIG. 12 illustrates text magnification and page layout in accordancewith a second preferred embodiment;

FIG. 13 illustrates the process of expanding text in response to theusers interest in the text in accordance with a preferred embodiment;

FIG. 14 illustrates the process for adjusting the layout of a display asa result of expanded text in accordance with a preferred embodiment;

FIG. 15 illustrates a possible first page of an electronic newspapershowing articles and an advertisement in accordance with a preferredembodiment;

FIG. 16 illustrates a possible second page of an electronic newspapershowing information determined to be of interest to the reader inaccordance with a preferred embodiment; and

FIG. 17 illustrates the process used to evaluate the information ofinterest to a reader and to select new information matching the readersinterest in accordance with a preferred embodiment.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Notations and Nomenclature

The following “notations and nomenclature” are provided to assist in theunderstanding of the present invention and the preferred embodimentsthereof.

Advertisement—Information provided about a commercial product or servicewith the purpose of informing the viewer about the product or service soas to lead to a commercial transaction. A type of article.

Article—A complete piece of writing often identified with a title.

Bandwidth—The amount of information that can be passed across acommunication channel in a given period of time (usually designated inreference to a second).

Dialog—A specialized window that is used to obtain additionalinformation from the user. A dialog is often used to obtain options andparameters that are computer dependent. A good example is a print dialogthat is evoked by a print menu command. The print dialog allows the userto specify what printer options are to be used for a particular printjob. Generally the dialog allows the user to specify specific parametersand then to either affirm or cancel the command that evoked the dialog.If the user cancels the command, the dialog window is removed and thecommand that evoked the dialog is aborted. If the user confirms thecommand the user provided information acquired by the dialog is used inthe execution of the command that evoked the dialog.

E-mail system—Electronic mail system. A system of computers generallyconnected by a network that allow a sender (being a user of a firstcomputer) to compose and send data making up a message to a recipient(being a user of either the first computer or of a second computer).

Graphical User Interface (GUI)—A user interface that allows a user tointeract with a computer display by pointing at selectable control areason the display and activating a command or computer operation associatedwith the selectable control area. GUIs are well known in the art.

Gaze position—An area of interest on the screen providing a boundary ofthe user's gaze over a limited period of time.

Gaze coordinates—The coordinates that represent the intersection of theuser's gaze with the display screen over a limited period of time.

Gaze coordinates (raw)—The coordinates that represent the instantaneousintersection of the user's gaze with the display screen.

Image—Any information displayed on a display screen such as, but notlimited to, pictures, drawings, illustrations, text, and video. An imagegenerally displayed in a view contained in a window. A still image is apicture. A moving image is comprised of a number of frames of stillimages that are played in sequence similar to a video.

Pointing device—A device responsive to a computer user's input thatmoves an indicator on a computer display screen. Such an indicator hasan active point such that if the pointing device is activated (e.g., bya button push for a mouse device) a command associated with theselectable control area covered by the active point is invoked. Pointingdevices are generally used with graphical user interfaces.

Selectable control area—An area on a computer display that is sensitiveto activation of a pointing device. On activation of the pointing deviceover the selectable control area, a command or computer operationassociated with the selectable control area is invoked. Most computersystems that provide a Graphical User Interface (GUI) also provide othermethods for invoking these commands or computer operations such askeyboard function keys or command lines.

URL—A Uniform Resource Locator. URLs are used to access information onthe World Wide Web.

View—An area in a window where information is provided.

Window—An area, usually rectangular, on a computer display screencontrolled by an application.

Procedure—A self-consistent sequence of steps leading to a desiredresult. These steps are those requiring physical manipulation ofphysical quantities. Usually these quantities take the form ofelectrical or magnetic signals capable of being stored, transferred,combined, compared, and otherwise manipulated. These signals arereferred to as bits, values, elements, symbols, characters, terms,numbers, or the like. It will be understood by those skilled in the artthat all of these and similar terms are associated with the appropriatephysical quantities and are merely convenient labels applied to thesequantities.

Overview

The manipulations performed by a computer in executing opcodes are oftenreferred to in terms, such as adding or comparing, that are commonlyassociated with mental operations performed by a human operator. In thepresent invention no such capability of a human operator is necessary inany of the operations described herein. The operations are machineoperations. Useful machines for performing the operations of theinvention include programmed general purpose digital computers orsimilar devices. In all cases the method of computation is distinguishedfrom the method of operation in operating a computer. The presentinvention relates to method steps for operating a computer in processingelectrical or other (e.g., mechanical, chemical) physical signals togenerate other desired physical signals.

The invention also relates to apparatus for performing these operations.This apparatus may be specially constructed for the required purposes orit may comprise a general purpose computer as selectively activated orreconfigured by a computer program stored in the memory of a computer.The procedures presented herein are not inherently related to aparticular computer or other apparatus. In particular, various generalpurpose machines may be used with programs written in accordance withthe teachings herein, or it may prove more convenient to construct morespecialized apparatus to perform the required method steps. The requiredstructure for a variety of these machines will appear from the followingdescription. Also, the invention may be embodied in a computer readablestorage medium encoded with a program that causes a computer to performthe programmed logic.

Operating Environment

FIG. 1 illustrates a computer system referenced to by the generalreference character 102, configured to support the invention. The system102 includes a processor 133 having an Input/Output (“I/O”) section 135,a central processing unit (“CPU”) 137 and a memory section 139. The I/Osection 135 is connected to a keyboard 141, a disk storage unit 143, anetwork interface 145 to provide access to a network 117, a display unit147, a pointing device 148, a gaze-tracker device 155, a speaker 157 anda CD-ROM drive unit 149. The CD-ROM unit 149 can read a CD-ROM medium151 that typically contains a plurality of programs 153 and data. TheCD-ROM 149 and the disk storage unit 143 comprising a filestoragemechanism. One skilled in the art will understand that the filestoragemechanism may comprise read only memory, RAM or other storage technologythat allows a computer to access data. Such a computer system is capableof executing programmed logic that embodies the invention.

Gaze Tracker Operation

FIG. 2 illustrates a gaze tracking device 201 attached to a computerdisplay device 203. As illustrated, the gaze tracking device 201 ismounted below the computer display 203 and comprises a video lens 205,with an infrared LED 207 mounted on the center of the lens 205. Oneskilled in the art will understand that one of many different types ofgaze tracking devices can be used with the invention. The computerdisplay device 203 has a display area 209 that the computer can accessto display information. The computer generally creates a plurality ofwindows 211 and 213 for this informational display. As the user looks atthe display area 209, the gaze tracking device determines the users gazeposition. The gaze coordinate (raw) is an ordered pair of valuesproviding the immediate two dimensional coordinates of where the user'sgaze is positioned on the screen. A number of gaze coordinates can beused to develop a gaze position that is a two dimensional coordinate ofa time weighted average of the gaze coordinates. The invention need nothave precise gaze coordinates. In fact the gaze coordinates need only beaccurate to approximately a ¼ inch. One skilled in the art willunderstand that the gaze position could also be returned as a rectangle,polygon, circle or other shape representing an area of interest. Furtherone skilled in the art will understand that the gaze tracking device 201may be configured to provide the gaze position only when the user hasshown interest in a displayed area for a sufficient time, or thatapplication or system program logic may be utilized to detect when theuser has shown an interest by monitoring the gaze coordinates over someperiod of time. The gaze position is developed when the system detectsthat the user has become interested in a particular area of the display.The system detects this condition by recognizing that the user's gazehas been limited to a particular region of the displayable area 209 fora period of time.

FIG. 3 illustrates aspects of a gaze position determined from gazecoordinates returned from a gaze tracking device. The dashed rectanglelabeled as 301 indicates the boundaries of an image (not shown). Becausethe gaze tracking device has an uncertainty and because the user's gazeconstantly moves (because of involuntary eye movements) even whenfocused on an area of interest, this embodiment of the inventionprovides the gaze position as an area 305 where the user's gaze isfixed. The provided area 305 indicates that the user's gaze did notleave the specified area for a given time such as a half second. Theapplication program that uses the returned circular area 305 is able todetermine that the user's gaze is well within the image 301 because theprovided circle is completely contained within the area of the image. Ifthe user has interest in the entire image, the gaze would be morediffused resulting in a larger circle. For example, in comparing theimage labeled 301 with an image 311, the user viewing the image 301 hasfocused in on a particular aspect of the image as indicated by thecircle labeled as 305. The user viewing the image 311 has indicated moreinterest in the totality of the image as compared to a particular aspectof the image as indicated by the circle labeled as 309. One skilled inthe art will understand that a rectangle or other area indication can beused as well as a circle.

In another embodiment of the invention, the gaze tracker returns thegaze position as a point. For example, a dashed rectangle labeled as 303indicates the boundaries of a different image (again this image is notshown). In this embodiment, the gaze tracker, after processing gazemovements over some period of time, simply returns a point that is atime weighted average of the position of the gaze. This point isindicated by the arrow labeled as 307.

FIG. 4 illustrates the process used to develop a gaze position from aplurality of gaze coordinates. The process starts at a terminal 401.Next at a step 403, the process performs any necessary setup orinitialization. This includes initializing timer program logic toperiodically gather instantaneous gaze coordinate data from the gazetracker apparatus, acquiring user preference data and other one-timeinitializations. Next at a step 405, the process receives a plurality ofgaze coordinates (raw). These gaze coordinates (raw) indicate theposition of the user's gaze over a given time. After a sufficient numberof gaze coordinates are gathered (raw), the process examines the gazecoordinates (raw) for a focus pattern at a branch point 407. A focuspattern occurs when the gaze coordinates (raw) are all within someboundary without gaze coordinates (raw) being statistically far from theothers. If the gaze coordinates (raw) do not show a focused gaze, thegathering of instantaneous gaze coordinates (raw) continues as shown byan arrow 406. If at the branch point 407 a focus pattern is found then astep 409 determines an area of focus that contains the statisticallysignificant gaze coordinates (raw). Finally, in a step 411 the gazeposition is made available to the program logic for use. Finally, theprocess repeats as shown by an arrow 412. In the case where the gazeposition is presented as an area instead of a simple coordinate pair,the receiving program logic determines which view is overlapped by thegaze position.

There are various well known methods in the art to present the gazeposition to program logic such as an application program. These includeproviding an exception to an application, sending an interprogrammessage containing the gaze position to the application and many othermethods.

An executing computer program can modify its operation to best suit theuser's interest by using a gaze tracking device to determine which areaof a display screen is the object of a user's attention. Specificembodiments using this capability of the gaze tracker are describedbelow.

Gaze Tracker Mediated Downloading

As mentioned above, prior art communication programs such as WWWbrowsers and other data transfer programs that provide multiple datastreams do not allocate bandwidth depending on the user's specificinterest. At best, these programs will allocate bandwidth to images anddata that is presented to the user on the display device. The inventionenables a computer to detect which data stream the user is interested inand to allocate more bandwidth to that data stream without an explicitcommand from the user.

FIG. 5 illustrates how a preferred embodiment of the invention is usedin a WWW browser. The browser application displays a window 501 on thedisplay device. The user invokes a URL to present a webpage containinginformation encoded in HTML in the window 501. In this particularexample, the webpage shows a plurality of three areas of text 503, 511and 517 along with a plurality of areas of images 505, 513 and 519. Eachof these images are displayed in a view. Further, these images areconstructed from “large data entities”. Each large date entity iscomposed of a large amount of data that is used to define the entity.Examples of large data entities, among others, are high resolutiongraphical images, sound and video entities. A plurality of shaded areas507, 509 and 521 of the images 505, 513 and 519 indicate the amount ofthe image that has been downloaded at some particular point in timeprior to completion. If the user is interested in the image labeled as513, the user will watch that image 513 fill. Thus, a gaze position area515 intersects the image 513 thus identifying the image 513 as an areaof interest. A complementary approach to determining which image 505,513 or 519 is of interest is to have the text 503, 511 or 517 associatedwith each image. Thus, when the user reads the text 511 linked(associated) with an image 513 a gaze position 512 is found on the text.Once the user shows interest in the text, the application can properlyassume that the area of interest is the linked image 513.

Once the area of interest is determined, the system obtains thebandwidth allocated to the area of interest and, if possible, increasesthe bandwidth allocation of the data stream directed to the area ofinterest using techniques well understood in the art.

FIG. 6 illustrates the process used to allocate bandwidth to a datastream supplying data to an area of interest. The process starts at aterminal 601. At a step 603 the process receives the gaze position froma gaze tracking device as described above. Then at a step 605 the gazeposition is used to determine what information or view on the displaydevice intersects with the gaze position. Next in a decision block step607, the process checks whether the displayed information thatintersects the gaze position is relevant. Information that is relevantcomprises information that is in the process of being transferred to thedisplay device. In other words, a completely loaded image is notrelevant and has no bandwidth allocation because there is no need toincrease the bandwidth for an image that has been completelytransmitted. Contrast this situation where there is zero bandwidthallocated to a yet-to-be-loaded image. Here the yet-to-be-loaded imagehas a bandwidth allocation, but the current allocation is zero whereasthere is no bandwidth allocation at all for an image that has beencompletely downloaded. Text is another example of displayed informationthat usually is not relevant because the user cannot read the text asfast as it is transmitted even with limited bandwidth.

If in the decision block step 607 the displayed information is relevantthen, in a step 609 the process determines the area of interest on thedisplay and in a step 611 increases the bandwidth allocated to the dataflow associated with the area of interest. Finally, the processcompletes through a terminal 613.

However, if in the decision block step 607 the displayed information isnot relevant, the source of the displayed information is checked in adecision block step 615 to determine whether the source indicates thatthe displayed information is associated with an area of interest. Anexample of this situation is where text is associated with an image. Ifat the decision block step 615 the source is not associated with an areaof interest processing completes through the terminal labeled as 613.However, if at the decision block step 615 the source is associated withan area of interest, the process, at the step 611, increases thebandwidth of data flowing to that area of interest. Finally, the processcompletes through the terminal 613.

In a preferred embodiment of a WWW browser, the process illustrated inFIG. 6 determines what area of the display device the user is interestedin. If that area is a partially downloaded image, the inventionincreases the bandwidth allocated to the data flow for completing theimage. If the area is a textual area whose defining source HTML providesan association with an image (for example, by providing an attributewithin the paragraph element that associates a large data entity withthe paragraph) the invention increases the bandwidth allocated to thedata flow for completing that specific image.

Finally, embodiments utilizing the invention are not limited to WWWbrowsers. Any application that presents information that is downloadedacross a limited bandwidth network onto a display device can use theinvention. This includes detecting interest on data transfer statusdisplays generated by programs such as, among others, FTP, Kermit, or x-y- and zmodem applications.

Captioning

Another preferred embodiment of the invention relates to captioning ofimages. Audio captioning detects the user's interest in a displayedimage and automatically provides additional audio information to theuser about the displayed image while video captioning providesadditional video information.

FIG. 7a illustrates captioning. An image of a phone 701 is displayed tothe user. If the user is interested in the phone, the user looks at theimage 701 thus generating a gaze position from the gaze tracking device.The invention then presents additional information about the phone tothe user. In some circumstances, the additional information iselectronic information attached to the image by a data structure withinthe underlying application such as the one shown in FIG. 7b. Suchadditional information may include text, text that is converted toaudio, recorded audio data, video data, or another image.

In other circumstances the additional information is a textual caption703 displayed with the image 701 but without a direct electronic linkageto the captioned image 701. When the additional information is adisplayed textual caption 703, the invention detects that a textualcaption 703 exists for the image 701, extracts that textual caption 703and passes the extracted text string to a text-to-speech process thatpresents the caption text to the user in audio form. Some page markuplanguages support a <CAPTION> tag. For example, both SGML and HTMLsupport such a tag (note however, that although HTML supports a<CAPTION> tag, it is currently only used for table captions and not forfigures). Thus one of the preferred embodiments of the invention usesthe <CAPTION> tag to detect the textual caption 703 of an image 701.

All of these methods provide additional information to the user about animage-of-interest. The audio methods allow the user to maintain his/herattention on the image while receiving additional informationauditorally. Many of the other methods of presenting the additionalinformation result in the user removing her/his gaze from theimage-of-interest.

FIG. 7b illustrates a representative data structure 710 that can be usedto associate additional electronic information with an image asmentioned above. An “Image ID” field 711 identifies the image displayedto the user. A “Pointer to Image Data” field 713 contains the imagedata, or data that directly or indirectly references the image data usedto create the displayed image 701. A “Pointer to Additional Information”field 715 contains the additional electronic information data, or datathat directly or indirectly references the additional electronicinformation data. This data structure is one of many that can be used byprogrammed applications that provide an explicit link between an imageand additional information. Some programmed applications do not providesuch an explicit linkage.

FIG. 8 illustrates a window 801 displaying an example page 803. The page803 includes text and an image 805 of a phone. The phone image 805 hasan associated textual caption 807. The image 805 and the caption 807 areoffset from the text by a plurality of blank areas 809, 811 and 813.These blank areas 809, 811, 813 delimit the image 805 and its associatedtextual caption 807 from the rest of the displayed text. This separationallows the underlying application program to determine a linkage betweenthe image and its associated textual caption. Further, even if theunderlying programmed application that presented the window 801 does nothave the facility to directly determine the link between the caption 807and the image 805, other programmed applications can scan the window801. After scanning the window these programmed applications thenisolate and pass the caption text 807 through a text-to-speech facilityto convert the caption text 807 to audio and present the audio to theuser.

FIG. 9 illustrates the process used to present additional information.The process starts at a terminal 951 when it receives a gaze positionfrom a gaze-tracking device at a step 953. If at a decision block step955 the gaze position does not intersect an image, the process completesthrough a terminal 957. If at the decision block step 955 the gazeposition intersects an image and if at a decision block step 959 theimage has an electronic caption, the process accesses and presents theadditional information at a step 961. Finally, the process completesthrough the terminal 957. If at the decision block step 959 the imagedoes not have an electronic caption but does have a displayed textualcaption as determined in a decision block step 963, the process extractsthe caption text and passes the resulting text string to atext-to-speech facility for auditory presentation to the user in a step965. Finally, the process completes through the terminal 957. If in thedecision block step 963 the image does not have a textual caption, or ifsuch a caption cannot be determined, the process completes through theterminal 957.

One skilled in the art will understand that auditory presentation of theadditional information to the user is accomplished with techniques knownin the prior art.

Displayed Text Enlargement

A page from an electronic newspaper is illustrated in FIG. 10. Thisinformation is displayed on a computer display screen generally in awindow as discussed above. Here a window 1001 contains a headline 1003,a plurality of four article titles 1005, 1009, 1013 and 1017 and apartial text 1007, 1011, 1015, and 1019 of the titled articles. Acomputer for displaying the electronic newspaper that is equipped with agaze tracking device can rely on the normal reading pattern of a user.That is, that the user first reads the major headline 1003, then thearticle title 1005, 1009, 1013 or 1017 followed by the article itself1007, 1011, 1015, or 1019. Thus, when the gaze tracker indicates thatthe user is reading an article title, the invention starts expanding thearticle text by a magnification factor to an optimal size for the user.

FIG. 11 illustrates two possible embodiments of the invention. As inFIG. 10 within a window 1101, a plurality of four article titles 1105,1109, 1113, 1117 are displayed. The window 1101 also includes a headline1103. An article 1107 has been expanded by the invention to acomfortable size for reading. This expansion has occurred withoutincreasing the size of the window 1101 within which the article 1107 isdisplayed. However, the view containing the article 1107 and the text ofthe article 1107 have been expanded. To obtain the necessary windowspace to expand the view containing the article 1107 without interferingwith the expanded view 1107, the view containing an article 1115 alongwith its title 1113 have been reduced in size and shifted towards theedge of the window 1101. The articles associated with the titles 1109and 1117 have been shifted completely off of the window 1101 leavingonly their associated titles 1109 and 1117.

If the computer detects that the user's gaze has moved from the expandedarticle 1107, to a different title 1113, 1109, or 1117, the text of theassociated article is expanded. At the same time, the text and title ofthe previously expanded article 1105, 1107 is slowly reduced so that theuser's gaze is not attracted by the apparent movement caused by thereduction. In a preferred embodiment of the invention the user mayutilize computer commands to cause the reduction and expansion of thearticles and their associated title to be instantaneous. Further, theexpansion can be to a predetermined user preference. Finally, theexpansion of the article can be dynamically determined by monitoring theuser's reading speed of the article (by determining how the gazeposition changes over time) so as to maximize the reading speed.

Another embodiment of the invention retains the original size of theview, but magnifies the text within the view by a magnification factor.This embodiment does not require the reduction and repositioning of theother articles as does the preferred embodiment. However, as the textexpands within the limited bounds of the view the amount of text thatcan be displayed in the unmagnified view is reduced. Further, themaximum magnification of the text is limited in that the essentialstructure of the left to right reading pattern (for Latin basedlanguages) should be retained for comfortable reading. Too muchmagnification of the text within a limited space results in a column ofwords that is difficult to read.

FIG. 12 illustrates another approach to managing the informationdisplayed in a window 1201. Here, a title 1205 and text of an article AA1207 is expanded and simply overlays a plurality of other articles 1211,1215, and 1219 in the window 1201. Because the other articles and titlesare obscured, the text is reduced when the user's gaze leaves the window1201 or when the user invokes a command function either by use of apointing device, a command line or other command invocation method.Because the magnified view overlays the other views, a preferredembodiment places the magnified view within a boarder 1217 to separatethe magnified view from the other views.

FIG. 13 illustrates the process used to determine when to expand anarticle. The following description references FIG. 10 as an illustrativeexample. The process starts at a terminal 1301. At this time the user'sgaze has not focused in on a window 1001. When the user's gaze entersthe window 1001, the process, at a step 1305, monitors which text isread by the user. So long as the gaze position indicates that the useris reading one of the plurality of titles 1005, 1009, 1013, and 1017 asdetermined by a decision block step 1307 the monitoring step 1305continues as indicated by an arrow 1306. If the decision block step 1307detects that the user's gaze changed to a subtitle or the plurality ofarticle text 1007, 1011, 1015, 1019, the process starts to expand theview and text of the contained article at a step 1309. The processcontinues to monitor the user's gaze position at a step 1311 todetermine the user's reading speed. Next at a step 1315, the processadjusts the size of the article text to maximize the user's readingspeed possibly continuing the expansion of the view started in the step1311. This adjustment uses a magnification factor having a value that isa function of the reading speed. This magnification factor controls theview and the text within the view. Finally at a decision block 1317, theprocess determines whether the user's gaze position continues tointersect the view containing the article (that is, to verify that theuser continues to read the article). If at the decision block 1317 theuser continues to read the article, the monitoring process of the step1311 continues as indicated by an arrow 1313. However if at the decisionblock 1317, the user has stopped reading the article, the process startsreducing the size of the abandoned article at a step 1319 and the entireprocess is repeated as indicated by an arrow 1321. The invention allowsthe user to reacquire the abandoned article simply by bringing theuser's gaze back to the text of the abandoned article. This stops thereduction of the size of the article text and restarts the expansion ofthe article text at the step 1309 and leading to the text adjustmentstep 1315.

In the enlarging and reduction steps above, the text is slowly enlargedand reduced so as not to be a distraction to the user. Thus the changein size does not attract the user's gaze from the article being read.However, the invention also provides the user with commands thataccelerate these scaling processes. Further, the maximum size of anexpanded article can be specified as a user preference.

FIG. 14 illustrates the process used to size the views impacted by themagnification of the view containing the article being read by theuser—the active view. The process starts at a terminal 1401. At a step1403 the process first determines the new position and size of theactive view in response to the change of scale. Based on this newposition and size, at a step 1405 the process determines which otherviews displayed in the window 1001 will be affected by the change insize and position of the active view. Then, at a step 1407, eachaffected view is determined and adjusted in a step 1409 to make room forthe enlarged active view (where the active view is expanding), or totake up room released by a reduced active view (where the active view iscontracting). This process is repeated as indicated by an arrow 1411 foreach impacted view. Once the impacted views are adjusted the processcontinues, as indicated by an arrow 1415, to adjust the size andposition of the active view in a step 1417. Finally, the processcompletes through a terminal 1419. Note that a reduction in the size ofthe active view occurs to optimize the user's reading speed. This is notthe same reduction that results when the user has stopped reading a viewand that view contracts because it is no longer the active view.

This aspect of the invention has been described assuming normal Englishreading patterns (that is, top to bottom, left to right). One skilled inthe art will understand that other reading patterns are contemplated bythe invention.

Interest Based Information Presentation

FIG. 15 illustrates a typical electronic newspaper display. Theinvention also applies to data search engine displays. Here, a number ofarticles 1507, 1511, 1515 and 1519 along with their associated titles1505, 1509, 1513 and 1517 are displayed in views within a window 1501.Generally a major headline 1503 is also displayed along with a selectionof advertising material 1521. Because the information provider does notknow what subjects interest the user, the information provider presentsa mixture of articles. Here the “New Chemical Reaction” article 1507,and the “Quarks” article 1519 are both science and technology related.The other two articles 1515 and 1511 are not. Each article andadvertisement contains information that can be categorized in multipleways. This categorization includes at least one topic classifying theinformation. These topics are developed and maintained by theinformation provider. Using gaze tracking, the information provider candetermine the user's interest in each displayed article 1505, 1509, 1513and 1517 and advertisement 1521. Then, by using the topics categorizingthe presented information, the information provider can dynamicallyadjust the selection of subsequent information presented to this user.In the example above, suppose the user read the scientific basedarticles 1507 and 1519 but did not spend any time reading the otherarticles 1511 or 1515 or the advertisement 1521. The informationprovider populates the next page of information presented to the userwith articles and advertisements that have similar topics as thepreviously read information.

FIG. 16 illustrates a possible second page of information. Again, theinformation is provided within views contained in a window 1601. Now aplurality of articles 1607, 1611, 1615 and 1619 are all scientific ortechnology based, but with different levels of difficulty extending fromarticles of interest to the lay reader to those that are directed towardthe advanced elemental particle physicist. Further, both a MajorScientific Headline 1603 and an advertising 1621 can be selected to beof interest to the user. This allows the information provider tonarrowly target advertising and articles to each user. Again theinformation provider can continue to refine and narrow the selection ofinformation presented to the user on subsequent pages depending on theinterest shown in a plurality of article titles 1605, 1609, 1613, 1617,the time spent with reading each article 1607, 1611, 1615 and 1619 andthe time spent looking at the advertisement 1621 of the current page.

FIG. 17 illustrates the process used to select information forpresentation to a user. The process starts at a terminal 1701 after aninitial selection of information is displayed to the user. Using thegaze position developed as described above, a step 1705 monitors theuser's reading pattern. Further a step 1709, determines the amount ofinterest shown by the user in the displayed information. This interestis determined by measuring the user's reading speed, determining whetherthe user only skimmed the information or read the information in depth,and by measuring the amount of time spent with each article andadvertisement. Then in a step 1711, the process retrieves the topicsassociated with each displayed information and in a step 1713 correlatesthese topics with the user's interest. Next in a step 1715, the processselects additional information based on this correlation. This selectionof information is displayed in a step 1717 for the user. Finally, theprocess completes through a terminal 1719. In this manner, the user ispresented with a customized set of information that reflects the user'sinterest.

Although the present invention has been described in terms of thepresently preferred embodiments, one skilled in the art will understandthat various modifications and alterations may be made without departingfrom the scope of the invention. Accordingly, the scope of the inventionis not to be limited to the particular invention embodiments discussedherein, but should be defined only by the appended claims andequivalents thereof.

What is claimed is:
 1. A computer controlled method for alteringbandwidth allocation when downloading information to a computer fordisplay to a user; said computer having a display device, a networkinterface to a network, a gaze-tracking device, and a bandwidthallocation mechanism; said gaze-tracking device determining a gazeposition on said display device; said computer controlled methodcomprising the steps of: (a) identifying an area of interest to saiduser on said display device using said gaze position; (b) determining anexisting bandwidth allocation directed to said area of interest; and (c)increasing said existing bandwidth allocation to said area of interest.2. The computer controlled method of claim 1 wherein step (a) comprisesthe steps of: (a1) receiving said gaze position from said gaze-trackingdevice; (a2) establishing an intersection between said gaze position anda view on said display device; and (a3) determining said area ofinterest from said view.
 3. The computer controlled method of claim 2wherein said view contains text and step (a3) comprises the steps of:(a3.1) locating a large data entity view near said view; and (a3.2)designating said large data entity view as said area of interest.
 4. Thecomputer controlled method of claim 2 wherein said view contains textand wherein (a3) comprises the steps of: (a3.1) determining a linkagefrom said view to a large data entity view; and (a3.2) designating saidlarge data entity view as said area of interest.
 5. The computercontrolled method of claim 2 wherein said view contains a partiallydownloaded still image and step (a3) comprises the step of designatingsaid view as said area of interest.
 6. The computer controlled method ofclaim 2 wherein said view contains at least one frame of a moving imageand step (a3) comprises the step of designating said view as said areaof interest.
 7. The computer controlled method of claim 6 furthercomprising: initiating playback of said moving image.
 8. An informationaccess apparatus configured to access information; said apparatus havinga central processing unit (CPU), a memory, a network interface toprovide access to a network, a display device, a gaze-tracking device,and a bandwidth allocation mechanism; said gaze-tracking device fordetermining a gaze position on said display device; said informationaccess apparatus comprising: an identification mechanism configured toidentify an area of interest on said display device using said gazeposition; a determination mechanism configured to determine an existingbandwidth allocation directed to said area of interest; and a increasebandwidth mechanism configured to increase said existing bandwidthallocation.
 9. The information access apparatus of claim 8 wherein saididentification mechanism comprises: a gaze reception mechanismconfigured to receive said gaze position from said gaze-tracking device;an intersection establishment mechanism configured to establish anintersection between said gaze position and a view on said displaydevice; and an interest determination mechanism configured to determinesaid area of interest from said view.
 10. The information accessapparatus of claim 9 wherein said view contains text and said interestdetermination mechanism comprises: a large data entity view locationmechanism configured to locate a large data entity view near said view;and an area of interest designation mechanism configured to designatesaid large data entity view as said area of interest.
 11. Theinformation access apparatus of claim 9 wherein said view contains textand said interest determination mechanism comprises: a linkagedetermination mechanism configured to locate a linkage to a large dataentity view from said view; and an area of interest designationmechanism configured to designate said large data entity view as saidarea of interest.
 12. The information access apparatus of claim 9wherein said view contains a partially downloaded still image and saidinterest determination mechanism further comprises an area of interestdesignation mechanism configured to designate said view as said area ofinterest.
 13. The information access apparatus of claim 9 wherein saidview contains at least one frame of a moving image and said interestdetermination mechanism comprises an area of interest designationmechanism configured to designate said view as said area of interest.14. The information access apparatus of claim 13 further comprising aplayback initiation mechanism configured to initiate playback of saidmoving image.
 15. An information access system configured to accessinformation; system having a network interface to provide access to anetwork, a display device, a gaze-tracking device for determining a gazeposition on said display device and a bandwidth allocation mechanism;said information access system comprising: an identification mechanismconfigured to identify an area of interest on said display device; adetermination mechanism configured to determine an existing bandwidthallocation directed to said area of interest; and an increase bandwidthmechanism configured to increase said existing bandwidth allocation. 16.The information access system of claim 15 wherein said identificationmechanism comprises: a gaze reception mechanism configured to receivesaid gaze position from said gaze-tracking device; an intersectionestablishment mechanism configured to establish an intersection betweensaid gaze position and a view on said display device; and an interestdetermination mechanism configured to determine said area of interestfrom said view.
 17. The information access system of claim 16 whereinsaid view contains text and said interest determination mechanismcomprises: a large data entity view location mechanism configured tolocate a large data entity view near said view; and an area of interestdesignation mechanism configured to designate said large data entityview as said area of interest.
 18. The information access system ofclaim 16 wherein said view contains text and said interest determinationmechanism further comprises: a linkage determination mechanismconfigured to locate a linkage to a large data entity view from saidview; and an area of interest designation mechanism configured todesignate said large data entity view as said area of interest.
 19. Theinformation access system of claim 16 wherein said view contains apartially downloaded still image and said interest determinationmechanism further comprises an area of interest designation mechanismconfigured to designate said view as said area of interest.
 20. Theinformation access system of claim 16 wherein said view contains atleast one frame of a moving image and said interest determinationmechanism further comprises an area of interest designation mechanismconfigured to designate said view as said area of interest.
 21. Theinformation access system of claim 20 further comprising a playbackinitiation mechanism configured to initiate playback of said movingimage.
 22. A computer program product comprising: (a) a computer usablestorage medium having computer readable code embodied therein forcausing a computer to access information; said computer readable codecomprising: (b) computer readable code devices configured to cause saidcomputer to effect an identification mechanism configured to identify anarea of interest on a display device using said gaze position; computerreadable code devices configured to cause said computer to effect adetermination mechanism configured to determine an existing bandwidthallocation directed to said area of interest; and computer readable codedevices configured to cause said computer to effect an increasebandwidth mechanism configured to increase said existing bandwidthallocation.
 23. The computer program product of claim 22 wherein saididentification mechanism comprises: computer readable code devicesconfigured to cause said computer to effect a gaze reception mechanismconfigured to receive said gaze position from said gaze-tracking device;computer readable code devices configured to cause said computer toeffect an intersection establishment mechanism configured to establishan intersection between said gaze position and a view on said displaydevice; and computer readable code devices configured to cause saidcomputer to effect an interest determination mechanism configured todetermine said area of interest from said view.
 24. The computer programproduct of claim 23 wherein said view contains text and said interestdetermination mechanism comprises: computer readable code devicesconfigured to cause said computer to effect a large data entity viewlocation mechanism configured to locate a large data entity view nearsaid view; and computer readable code devices configured to cause saidcomputer to effect an area of interest designation mechanism configuredto designate said large data entity view as said area of interest. 25.The computer program product of claim 23 wherein said view contains textand said interest determination mechanism comprises: computer readablecode devices configured to cause said computer to effect a linkagedetermination mechanism configured to locate a linkage to a large dataentity view from said view; and computer readable code devicesconfigured to cause said computer to effect an area of interestdesignation mechanism configured to designate said large data entityview as said area of interest.
 26. The computer program product of claim23 wherein said view contains a partially downloaded still image andsaid interest determination mechanism comprises computer readable codedevices configured to cause said computer to effect an area of interestdesignation mechanism configured to designate said view as said area ofinterest.
 27. The computer program product of claim 23 wherein said viewcontains at least one frame of a moving image and said interestdetermination mechanism further comprises computer readable code devicesconfigured to cause said computer to effect an area of interestdesignation mechanism configured to designate said view as said area ofinterest.
 28. The computer program product of claim 27 furthercomprising computer readable code devices configured to cause saidcomputer to effect a playback initiation mechanism configured toinitiate playback of said moving image.